(function($) { /** * Global Scripts */ var headroomScroller = $('html').hasClass('object-fit') ? '.st-content' : 'window'; var mobile_width = 998; var window_width = $(window).width(); /** * Headroom Initialization */ if(Headroom.cutsTheMustard) { // Site Header var siteHeader = document.querySelector(".siteHeader"), siteHeader_headroom = new Headroom(siteHeader, { tolerance : { up : 0, down : 10 }, scroller : document.querySelector(headroomScroller) }); siteHeader_headroom.init(); // Mobile CTA //if (window_width < mobile_width) { // // var mobileCTA = document.querySelector(".floatBar"), // mobileCTA_headroom = new Headroom(mobileCTA, { // tolerance : { // up : 0, // down : 10 // }, // scroller : document.querySelector(headroomScroller) // }); // // mobileCTA_headroom.init(); // //} } else { $('.siteHeader').addClass('siteHeader--notModern'); } /** * Select2 */ $('select').each(function(){ var parent = $(this).parents('.frm_form_field'); var placeholder_val = null; if (parent.length && $(parent).data('select-placeholder')) { placeholder_val = $(parent).data('select-placeholder'); } console.log(placeholder_val); $(this).select2({ minimumResultsForSearch: 20, placeholder: placeholder_val }); }); /** * Old browser popup */ function ieVersion(uaString) { uaString = uaString || navigator.userAgent; var match = /\b(MSIE |Trident.*?rv:|Edge\/)(\d+)/.exec(uaString); if (match) return parseInt(match[2]); } setTimeout(function(){ $('#popmake-7795 .pum-close').hide(); if ( !Modernizr.flexbox ) { $('#pum-7795').popmake('open'); } else if (ieVersion() == 10) { $('#pum-7795').popmake('open'); } }, 2000); $('#browserPopupClose').click(function(){ $('#pum-7795').popmake('close'); }); /** * Smooth Scrolling */ $('a[href*="#"]') // Remove links that don't actually link to anything .not('[href="#"]') .not('[href="#0"]') .click(function(event) { // Set up when scroll isn't allowed var allowScroll = true; var event_target = $(event.target); // Remove tabs & accordions if ($(event_target).parents('.vc_tta-tab, .vc_tta-panel-title').length ) { allowScroll = false; } if ( allowScroll ) { // On-page links if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) { // Figure out element to scroll to var target = $(this.hash); target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); // Does a scroll target exist? if (target.length) { // Only prevent default if animation is actually gonna happen event.preventDefault(); // Get current scroll position of .st-content var scrollposition = $('.st-content').scrollTop(); $('.st-content').animate({ scrollTop: target.offset().top + scrollposition // Scroll the offset amount plus how much .st-content has already scrolled }, 1000, function() { // Callback after animation // Must change focus! var $target = $(target); $target.focus(); if ($target.is(":focus")) { // Checking if the target was focused return false; } else { $target.attr('tabindex','-1'); // Adding tabindex for elements not focusable $target.focus(); // Set focus again } }); } } } }); /** * Hide Preloader on window fully loaded, or after 2 seconds * Also resize the screen to trigger WPBakery adjustments */ window.addEventListener('load', function () { $(window).trigger( "resize" ); $('.preloader').addClass('preloader--hide'); }); setTimeout(function(){ $(window).trigger( "resize" ); $('.preloader').addClass('preloader--hide'); }, 2000); /** * Offcanvas menu layered navigation */ $('.offcanvasMenu__menu .menu > li > .sub-menu > li.menu-item-has-children > a').click(function(){ var open_class = 'offcanvasMenu__submenu--open', parent_li = $(this).parent('li'), submenu = $(parent_li).children('.sub-menu'); if (! $(parent_li).hasClass(open_class)) { event.preventDefault(); $(parent_li).addClass(open_class); $(submenu).slideDown(); } }); /** * Contact Page */ $('.inquiryBtns label').click(function(){ $('.inquiryBtns label').removeClass('label--checked'); $(this).addClass('label--checked'); }); /** * Career Filters */ var career_filters = $('.careerFilter__filter'); $(career_filters).change(function(){ var transition = 'fade'; var speed = 250; var data = {}; $(career_filters).each(function(){ var type = $(this).data('filter'); switch (type) { case 'location': data['taxonomy'] = $(this).data('taxonomy'); data['taxonomy-terms'] = $(this).val(); data['taxonomy-operator'] = $(this).data('taxonomy-operator'); break; case 'keyword': data['search'] = $(this).val(); break; } }); console.log(data); ajaxloadmore.filter(transition, speed, data); }); /** * Resource Filters */ var resource_filters = $('.resourceFilter__filter'); $(resource_filters).change(function(){ var transition = 'fade'; var speed = 250; var data = {}; $(resource_filters).each(function(){ var type = $(this).data('filter'); if ( !$(this).val() ) return true; switch (type) { case 'technology': data.taxonomy = data.taxonomy ? data.taxonomy + ":resource_technology" : "resource_technology"; data['taxonomy-terms'] = data['taxonomy-terms'] ? data['taxonomy-terms'] + ":" + $(this).val() : $(this).val(); data['taxonomy-operator'] = data['taxonomy-operator'] ? data['taxonomy-operator'] + ":IN" : "IN"; break; case 'type': data.taxonomy = data.taxonomy ? data.taxonomy + ":resource_type" : "resource_type"; data['taxonomy-terms'] = data['taxonomy-terms'] ? data['taxonomy-terms'] + ":" + $(this).val() : $(this).val(); data['taxonomy-operator'] = data['taxonomy-operator'] ? data['taxonomy-operator'] + ":IN" : "IN"; break; case 'keyword': data['search'] = $(this).val(); break; } }); console.log(data); ajaxloadmore.filter(transition, speed, data); }); /** * Blog Filters */ var blog_filters = $('.blogFilter__filter'); $(blog_filters).change(function(){ var transition = 'masonry'; var speed = 250; var data = {}; $(blog_filters).each(function(){ var type = $(this).data('filter'); switch (type) { case 'category': data['category'] = $(this).val(); break; case 'keyword': data['search'] = $(this).val(); break; } }); console.log(data); ajaxloadmore.filter(transition, speed, data); }); /** * Blog Progress Bar */ if (('#progressBar').length) { $('.st-content').scroll(function() { var winScroll = $('.st-content').scrollTop(); var height = $('.st-content')[0].scrollHeight - $('.st-content')[0].clientHeight; var scrolled = (winScroll / height) * 100; $('#progressBar').css('width', scrolled + '%'); }); } /** * Team Rotating Section Effect */ if ($('.teamRotating').length) { var visible_class = 'teamRotating__img--visible'; setInterval(function(){ $('.teamRotatingCol--rotating').each(function(index){ var delay = 100 * index; setTimeout(rotateTeamImgs, delay, $(this)); }); }, 4000); } function rotateTeamImgs(col) { var active_img = $(col).find('.' + visible_class), active_num = $(active_img).data('col-img'), next_num = active_num + 1; next_img= $(col).find('[data-col-img="' + next_num + '"]').length ? $(col).find('[data-col-img="' + next_num + '"]') : $(col).find('[data-col-img="0"]'); $(active_img).removeClass(visible_class); $(next_img).addClass(visible_class); } /** * Enablement Hub Additions */ /** * Read More sections */ var readMore = $('.textReadMore'); var readMore_collapsedClass = 'textReadMore--collapsed'; var readMore_btn = 'Read More'; if ($(readMore).length) { $(readMore).each(function(){ if ($(this).text().length > 160) { var readMore_height = $(this).outerHeight(); $(this).data('init-height', readMore_height); $(this).addClass(readMore_collapsedClass); $(this).after(readMore_btn); } }); $('.textReadMore__btn').on('click', function(){ console.log('Click'); var this_readMore = $(this).prev('.textReadMore'); $(this_readMore).css('height', $(this_readMore).data('init-height') + 'px'); $(this_readMore).removeClass(readMore_collapsedClass); $(this).slideUp(); }); } })( jQuery ); /** * Analytic Bootcamps page form selection */ function bootcampBtn(option) { if (option == null) return false; var form = jQuery('#bootcampsForm'); var scrollposition = jQuery('.st-content').scrollTop(); jQuery('.st-content').animate({ scrollTop: form.offset().top + scrollposition // Scroll the offset amount plus how much .st-content has already scrolled }, 1000, function() { // Callback after animation // Must change focus! form.focus(); if (form.is(":focus")) { // Checking if the target was focused return false; } else { form.attr('tabindex','-1'); // Adding tabindex for elements not focusable form.focus(); // Set focus again } }); // Scroll to form // Change dropdown option jQuery('#field_bootcampselected').val(option); jQuery('#field_bootcampselected').change(); }